In [2]:
%matplotlib inline
from matplotlib import pyplot as plt
import matplotlib.mlab as mlab
import csv
from scipy.stats import norm
import numpy as np
import scipy.stats as stats
In [3]:
data = open('../data/data.csv', 'r').readlines()
fieldnames = ['x', 'y', 'z', 'unmasked', 'synapses']
reader = csv.reader(data)
reader.next()
rows = [[int(col) for col in row] for row in reader]
In [4]:
from sklearn import mixture
def fit_samples(samples):
gmix = mixture.GMM(n_components=2, covariance_type='full')
gmix.fit(samples)
print gmix.means_
print gmix.get_params
colors = ['r' if i==0 else 'g' for i in gmix.predict(samples)]
ax = plt.gca()
ax.scatter(samples[:,0], samples[:,1], c=colors, alpha=0.8)
plt.show()
In [5]:
unmaskedSynapsesNoZero = ([r[-1] for r in rows if r[-2] != 0 if r[-1] !=0])
plt.hist(unmaskedSynapsesNoZero, bins = 100)
plt.show()
In [6]:
arr = []
#print unmaskedSynapsesNoZero
#print len(unmaskedSynapsesNoZero)
for i in unmaskedSynapsesNoZero:
arr.append([i])
#print unmaskedSynapsesNoZero[i]
arr = np.asarray(arr)
#print arr
#print len(arr)
print max(arr)
print min(arr)
In [10]:
from sklearn import mixture
gmix = mixture.GMM(n_components=2, covariance_type='full')
gmix.fit(arr)
print gmix.means_
print gmix.get_params
print gmix.covars_
colors = ['r' if i==0 else 'g' for i in gmix.predict(arr)]
ax = plt.gca()
ax.scatter(arr[:,0], arr[:,1], c=colors, alpha=0.8)
plt.show()
In [8]:
means = gmix.means_
cov = gmix.covars_
mu1 = means[0][0]
mu2 = means[1][0]
sigma1 = cov[0][0][0]
sigma2 = cov[1][0][0]
s1 = np.random.normal(mu1, sigma1, 5000)
s2 = np.random.normal(mu2, sigma2, 5000)
count, bins, ignored = plt.hist(s1+s2, 30, normed=True)
In [87]:
clf = GMM(2, n_iter=500, random_state=3).fit(arr)
xpdf = np.linspace(0, 400, 2000)
density = np.exp(clf.score(xpdf))
plt.hist(arr, 80, normed=True, alpha=0.5)
plt.plot(xpdf, density, '-r')
plt.xlim(0, 400);
In [39]:
print x
print len(x)
y = x[2300:]
print y
print len(y)
z = [x[:2300],x[2300:]]
z = np.vstack(z)
print type(z)
print z
z = z.reshape(-1, 1)
print z
In [ ]: